The Global Array Programming Model for High Performance Scienti c Computing

نویسندگان

  • J. Nieplocha
  • R. J. Harrison
چکیده

Motivatedby t he c haracteristics of current parallel architectures, we h ave d e-veloped an approach t o t he programming of scalable scientiic applications that combines some o f t he best features of message-passing a n d s h ared-memory programming m o d els. Two assumptions permeate our work. The rst is that m o s t high performance parallel computers have, and will continue to h ave, physically distributed memories with non-uniform memory access NUMA timing c har-acteristics. NUMA machines work best with a p plication programs that h ave a high degree of locality i n t heir memory reference patterns. The s e c o n d a s s u mp-tion is that extra programming eeort is, and will continue to be, required to construct such a p plications. Thus, a recurring t heme i n o u r w ork i s t he d evelop-ment o f t echniques and t ools that minimize the extra eeort required to construct application programs with explicit control of locality. There are signiicant tradeoos among t he important c o n s i d erations of portab-ility, eciency, a n d ease of coding. The m essage-passing programming m o d el is widely used because of its portability. Some a p plications, however, are too complex to b e c o d ed in a message-passing m o d e, if care is to b e t aken to m aintain a balanced computation load and a void redundant computations. The s h ared-memory programming m o d el simpliies coding, but i t i s n o t p o r t able and o f t en provides little control over interprocessor data transfer costs. Other more recent parallel programming m o d els, represented by s u ch languages and facilities as HPFF1, SISALL22, PCNN33, Fortran-MM4, Lindaa5, and s h ared virtual memory, address these problems in diierent w ays and t o v arying d egrees. None o f t hese models represents a n i d eal solution. Global Arrays GAs, the a p proach d escribed here, lead to b o t h s i m p l e c o d-ing a n d eecient execution for a class of applications that a p pears to be fairly common. The k ey concept of a GA …

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Data Parallel Performance Optimizations Using Array Aliasing

The array aliasing mechanism provided in the Connection Machine Fortran (CMF) language and run{time system provides a unique way of identifying the memory address spaces local to processors within the global address space of distributed memory architectures, while staying in the data parallel programming paradigm. We show how the array aliasing feature can be used e ectively in optimizing commu...

متن کامل

The Global Array Programming Modelfor High Performance Scienti cComputingJ

Motivated by the characteristics of current parallel architectures, we have developed an approach to the programming of scalable scientiic applications that combines some of the best features of message-passing and shared-memory programming models. Two assumptions permeate our work. The rst is that most high performance parallel computers have, and will continue to have, physically distributed ...

متن کامل

Scienti c Computation With

JavaSpaces provides a simple yet expressive mechanism for distributed computing with commodity technology. We discuss the suit-ability of JavaSpaces for implementing diierent classes of concurrent computations based on low-level metrics (null messaging and array I/O), and present performance results for several parametric algorithms. We found that although ineecient for communication intensive ...

متن کامل

A Visual Programming Environment for Supporting Scienti c Data Analysis

Our research on a conceptual model for scienti c data analysis concludes that traditional computational and environmental support is insu cient. We believe an integrated system that provides users with the ability to manage data, processes, and experiments as well as program data analysis tasks is necessary. In this paper the scienti c data analysis process in global change research is analyzed...

متن کامل

A Note on the Use of Java in Scienti c Computing

Java provides an easy-to-use language and platform for writing distributed, network-aware applications. For the scienti c computing community, this has the potential of extending the range and usefulness of scienti c codes, as well as widening its current user base. However, certain features of Java may limit its usefulness as a platform in which to develop and deploy scienti c codes. In this p...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1995